home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 1998 November / IRIX 6.5.2 Base Documentation November 1998.img / usr / share / catman / p_man / cat3 / complib / ssbtrd.z / ssbtrd
Text File  |  1998-10-30  |  4KB  |  133 lines

  1.  
  2.  
  3.  
  4. SSSSSSSSBBBBTTTTRRRRDDDD((((3333FFFF))))                                                          SSSSSSSSBBBBTTTTRRRRDDDD((((3333FFFF))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      SSBTRD - reduce a real symmetric band matrix A to symmetric tridiagonal
  10.      form T by an orthogonal similarity transformation
  11.  
  12. SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  13.      SUBROUTINE SSBTRD( VECT, UPLO, N, KD, AB, LDAB, D, E, Q, LDQ, WORK, INFO
  14.                         )
  15.  
  16.          CHARACTER      UPLO, VECT
  17.  
  18.          INTEGER        INFO, KD, LDAB, LDQ, N
  19.  
  20.          REAL           AB( LDAB, * ), D( * ), E( * ), Q( LDQ, * ), WORK( * )
  21.  
  22. PPPPUUUURRRRPPPPOOOOSSSSEEEE
  23.      SSBTRD reduces a real symmetric band matrix A to symmetric tridiagonal
  24.      form T by an orthogonal similarity transformation:  Q**T * A * Q = T.
  25.  
  26.  
  27. AAAARRRRGGGGUUUUMMMMEEEENNNNTTTTSSSS
  28.      VECT    (input) CHARACTER*1
  29.              = 'N':  do not form Q;
  30.              = 'V':  form Q;
  31.              = 'U':  update a matrix X, by forming X*Q.
  32.  
  33.      UPLO    (input) CHARACTER*1
  34.              = 'U':  Upper triangle of A is stored;
  35.              = 'L':  Lower triangle of A is stored.
  36.  
  37.      N       (input) INTEGER
  38.              The order of the matrix A.  N >= 0.
  39.  
  40.      KD      (input) INTEGER
  41.              The number of superdiagonals of the matrix A if UPLO = 'U', or
  42.              the number of subdiagonals if UPLO = 'L'.  KD >= 0.
  43.  
  44.      AB      (input/output) REAL array, dimension (LDAB,N)
  45.              On entry, the upper or lower triangle of the symmetric band
  46.              matrix A, stored in the first KD+1 rows of the array.  The j-th
  47.              column of A is stored in the j-th column of the array AB as
  48.              follows:  if UPLO = 'U', AB(kd+1+i-j,j) = A(i,j) for max(1,j-
  49.              kd)<=i<=j; if UPLO = 'L', AB(1+i-j,j)    = A(i,j) for
  50.              j<=i<=min(n,j+kd).  On exit, the diagonal elements of AB are
  51.              overwritten by the diagonal elements of the tridiagonal matrix T;
  52.              if KD > 0, the elements on the first superdiagonal (if UPLO =
  53.              'U') or the first subdiagonal (if UPLO = 'L') are overwritten by
  54.              the off-diagonal elements of T; the rest of AB is overwritten by
  55.              values generated during the reduction.
  56.  
  57.      LDAB    (input) INTEGER
  58.              The leading dimension of the array AB.  LDAB >= KD+1.
  59.  
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. SSSSSSSSBBBBTTTTRRRRDDDD((((3333FFFF))))                                                          SSSSSSSSBBBBTTTTRRRRDDDD((((3333FFFF))))
  71.  
  72.  
  73.  
  74.      D       (output) REAL array, dimension (N)
  75.              The diagonal elements of the tridiagonal matrix T.
  76.  
  77.      E       (output) REAL array, dimension (N-1)
  78.              The off-diagonal elements of the tridiagonal matrix T:  E(i) =
  79.              T(i,i+1) if UPLO = 'U'; E(i) = T(i+1,i) if UPLO = 'L'.
  80.  
  81.      Q       (input/output) REAL array, dimension (LDQ,N)
  82.              On entry, if VECT = 'U', then Q must contain an N-by-N matrix X;
  83.              if VECT = 'N' or 'V', then Q need not be set.
  84.  
  85.              On exit:  if VECT = 'V', Q contains the N-by-N orthogonal matrix
  86.              Q; if VECT = 'U', Q contains the product X*Q; if VECT = 'N', the
  87.              array Q is not referenced.
  88.  
  89.      LDQ     (input) INTEGER
  90.              The leading dimension of the array Q.  LDQ >= 1, and LDQ >= N if
  91.              VECT = 'V' or 'U'.
  92.  
  93.      WORK    (workspace) REAL array, dimension (N)
  94.  
  95.      INFO    (output) INTEGER
  96.              = 0:  successful exit
  97.              < 0:  if INFO = -i, the i-th argument had an illegal value
  98.  
  99.  
  100.  
  101.  
  102.  
  103.  
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.  
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.                                                                         PPPPaaaaggggeeee 2222
  130.  
  131.  
  132.  
  133.